The linear, narrative method of conveying information has a long history that continues to this day. This method generally entails presenting information in a sequential manner. Verbal storytelling, classroom lectures, novels, text books, magazines, journals, slide presentations, movies, documentaries, how-to videos, online articles, and blogs, are but a few examples of linear narratives. However, narratives are not the only way information is currently conveyed. There is also interactive exploration.
Interactive exploration is often used for visualization of complex data. This method generally entails presenting information in an organized, often hierarchical manner, which allows a user to intelligently search through the data. Browsable maps in 2D and 3D are an example where interactive mapping software enables users to explore a vast space with customizable data layers and views. Another example is a photosynth which enables exploration of collections of images embedded in a re-created 3D space. Yet another example is the so-called pivot control that enables a visually rich, interactive exploration of large collections of items by “pivoting” on selected dimensions or facets. These examples represent just a small number of the many interactive exploration schemes that exist today—and it is anticipated there will be many more developed in the future.
Conventionally, however, media rich interactive experiences on a webpage are implemented as one-off websites that utilize customized and complex code. This is because popular presentation layers are quite low level, including but not limited to HTML and other multimedia platforms that are employed to add information, video, and interactivity to webpages. Accordingly, to present a media rich experience on a web page to an end user, a designer of such web page must use non-trivial client and server-side code, or utilize relatively simple embeddings (such as embedding a video player in a web page). This issue can be mitigated by having a common server-side infrastructure, as well ask client-side libraries, such that rich content can be populated from data-driven sources (such as advertisement data). This, however, requires specialized coding on the server, which is generally not problematic for high profile sites that have a significant amount of financial resources, but is not feasible for web pages that are not generated by developers with significant resources. Further, even when customized server-side code is employed, the scope (type) of automatically generated rich media that can be displayed is relatively limited to slideshows or simple media lists, which reflects the complexity of generating rich media experiences.